package com.cy.pj.modules.entity;

import com.cy.pj.common.web.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 商品基本信息对象 fz_spu
 *
 * @author kiven
 * @date 2023-02-09
 */
public class Spu extends BaseEntity
{
    private static final long serialVersionUID = 1L;


    /** $column.columnComment */
    private Long id;

    /** 店铺id */
    //@Excel(name = "店铺id")
    private Long shopId;

    /** 商品编号 */
    //@Excel(name = "商品编号")
    private String goodsSn;

    /** 商品名称 */
    //@Excel(name = "商品名称")
    private String name;

    /** 商品所属类目ID */
    //@Excel(name = "商品所属类目ID")
    private Long categoryId;

    /** $column.columnComment */
    //@Excel(name = "商品所属供应商ID")
    private Long brandId;

    /** 商品宣传图片列表，采用JSON数组格式 */
    //@Excel(name = "商品宣传图片列表，采用JSON数组格式")
    private String gallery;

    /** 商品关键字，采用逗号间隔 */
    //@Excel(name = "商品关键字，采用逗号间隔")
    private String keywords;

    /** 商品总数量 */
    //@Excel(name = "商品总数量")
    private Long num;

    /** 商品简介 */
    //@Excel(name = "商品简介")
    private String brief;

    /** 是否上架 */
    //@Excel(name = "是否上架")
    private Integer isOnSale;

    /** $column.columnComment */
    //@Excel(name = "是否上架")
    private Integer sortOrder;

    /** 商品页面商品图片 */
    //@Excel(name = "商品页面商品图片")
    private String picUrl;

    /** 商品分享海报 */
    //@Excel(name = "商品分享海报")
    private String shareUrl;

    /** 是否新品首发，如果设置则可以在新品首发页面展示 */
    //@Excel(name = "是否新品首发，如果设置则可以在新品首发页面展示")
    private Integer isNew;

    /** 是否人气推荐，如果设置则可以在人气推荐页面展示 */
    //@Excel(name = "是否人气推荐，如果设置则可以在人气推荐页面展示")
    private Integer isHot;

    /** 商品单位，例如件、盒 */
    //@Excel(name = "商品单位，例如件、盒")
    private String unit;

    /** 专柜价格 */
    //@Excel(name = "专柜价格")
    private BigDecimal counterPrice;

    /** 零售价格 */
    //@Excel(name = "零售价格")
    private BigDecimal retailPrice;

    /** 商品详细介绍，是富文本格式 */
    //@Excel(name = "商品详细介绍，是富文本格式")
    private String detail;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    //@Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date addTime;

    /** 逻辑删除 */
    //@Excel(name = "逻辑删除")
    private Integer deleted;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getShopId() {
        return shopId;
    }

    public void setShopId(Long shopId) {
        this.shopId = shopId;
    }

    public String getGoodsSn() {
        return goodsSn;
    }

    public void setGoodsSn(String goodsSn) {
        this.goodsSn = goodsSn;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Long getCategoryId() {
        return categoryId;
    }

    public void setCategoryId(Long categoryId) {
        this.categoryId = categoryId;
    }

    public Long getBrandId() {
        return brandId;
    }

    public void setBrandId(Long brandId) {
        this.brandId = brandId;
    }

    public String getGallery() {
        return gallery;
    }

    public void setGallery(String gallery) {
        this.gallery = gallery;
    }

    public String getKeywords() {
        return keywords;
    }

    public void setKeywords(String keywords) {
        this.keywords = keywords;
    }

    public Long getNum() {
        return num;
    }

    public void setNum(Long num) {
        this.num = num;
    }

    public String getBrief() {
        return brief;
    }

    public void setBrief(String brief) {
        this.brief = brief;
    }

    public Integer getIsOnSale() {
        return isOnSale;
    }

    public void setIsOnSale(Integer isOnSale) {
        this.isOnSale = isOnSale;
    }

    public Integer getSortOrder() {
        return sortOrder;
    }

    public void setSortOrder(Integer sortOrder) {
        this.sortOrder = sortOrder;
    }

    public String getPicUrl() {
        return picUrl;
    }

    public void setPicUrl(String picUrl) {
        this.picUrl = picUrl;
    }

    public String getShareUrl() {
        return shareUrl;
    }

    public void setShareUrl(String shareUrl) {
        this.shareUrl = shareUrl;
    }

    public Integer getIsNew() {
        return isNew;
    }

    public void setIsNew(Integer isNew) {
        this.isNew = isNew;
    }

    public Integer getIsHot() {
        return isHot;
    }

    public void setIsHot(Integer isHot) {
        this.isHot = isHot;
    }

    public String getUnit() {
        return unit;
    }

    public void setUnit(String unit) {
        this.unit = unit;
    }

    public BigDecimal getCounterPrice() {
        return counterPrice;
    }

    public void setCounterPrice(BigDecimal counterPrice) {
        this.counterPrice = counterPrice;
    }

    public BigDecimal getRetailPrice() {
        return retailPrice;
    }

    public void setRetailPrice(BigDecimal retailPrice) {
        this.retailPrice = retailPrice;
    }

    public String getDetail() {
        return detail;
    }

    public void setDetail(String detail) {
        this.detail = detail;
    }

    public Date getAddTime() {
        return addTime;
    }

    public void setAddTime(Date addTime) {
        this.addTime = addTime;
    }

    public Integer getDeleted() {
        return deleted;
    }

    public void setDeleted(Integer deleted) {
        this.deleted = deleted;
    }

    @Override
    public String toString() {
        return "Spu{" +
                "id=" + id +
                ", shopId=" + shopId +
                ", goodsSn='" + goodsSn + '\'' +
                ", name='" + name + '\'' +
                ", categoryId=" + categoryId +
                ", brandId=" + brandId +
                ", gallery='" + gallery + '\'' +
                ", keywords='" + keywords + '\'' +
                ", num=" + num +
                ", brief='" + brief + '\'' +
                ", isOnSale=" + isOnSale +
                ", sortOrder=" + sortOrder +
                ", picUrl='" + picUrl + '\'' +
                ", shareUrl='" + shareUrl + '\'' +
                ", isNew=" + isNew +
                ", isHot=" + isHot +
                ", unit='" + unit + '\'' +
                ", counterPrice=" + counterPrice +
                ", retailPrice=" + retailPrice +
                ", detail='" + detail + '\'' +
                ", addTime=" + addTime +
                ", deleted=" + deleted +
                '}';
    }
}
